(0) Obligation:
The Runtime Complexity (innermost) of the given
CpxTRS could be proven to be
BOUNDS(1, 1).
The TRS R consists of the following rules:
zeros → cons(0, n__zeros)
tail(cons(X, XS)) → activate(XS)
zeros → n__zeros
activate(n__zeros) → zeros
activate(X) → X
Rewrite Strategy: INNERMOST
(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)
Converted Cpx (relative) TRS to CDT
(2) Obligation:
Complexity Dependency Tuples Problem
Rules:
zeros → cons(0, n__zeros)
zeros → n__zeros
tail(cons(z0, z1)) → activate(z1)
activate(n__zeros) → zeros
activate(z0) → z0
Tuples:
ZEROS → c
ZEROS → c1
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ACTIVATE(z0) → c4
S tuples:
ZEROS → c
ZEROS → c1
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ACTIVATE(z0) → c4
K tuples:none
Defined Rule Symbols:
zeros, tail, activate
Defined Pair Symbols:
ZEROS, TAIL, ACTIVATE
Compound Symbols:
c, c1, c2, c3, c4
(3) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)
Removed 5 trailing nodes:
ACTIVATE(z0) → c4
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ZEROS → c1
ZEROS → c
ACTIVATE(n__zeros) → c3(ZEROS)
(4) Obligation:
Complexity Dependency Tuples Problem
Rules:
zeros → cons(0, n__zeros)
zeros → n__zeros
tail(cons(z0, z1)) → activate(z1)
activate(n__zeros) → zeros
activate(z0) → z0
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:
zeros, tail, activate
Defined Pair Symbols:none
Compound Symbols:none
(5) SIsEmptyProof (BOTH BOUNDS(ID, ID) transformation)
The set S is empty
(6) BOUNDS(1, 1)